Next: Waiting, Previous: Reading Input, Up: Command Loop [Contents][Index]
Certain special events are handled at a very low
level—as soon as they are read. The read-event
function processes these events itself, and never returns them.
Instead, it keeps waiting for the first event that is not special
and returns that one.
Special events do not echo, they are never grouped into key
sequences, and they never appear in the value of
last-command-event or
(this-command-keys). They do not discard a numeric
argument, they cannot be unread with
unread-command-events, they may not appear in a
keyboard macro, and they are not recorded in a keyboard macro
while you are defining one.
Special events do, however, appear in
last-input-event immediately after they are read,
and this is the way for the event’s definition to find the
actual event.
The events types iconify-frame,
make-frame-visible, delete-frame,
drag-n-drop, language-change, and user
signals like sigusr1 are normally handled in this
way. The keymap which defines how to handle special
events—and which events are special—is in the
variable special-event-map (see Active Keymaps).